0 1 0 1 0 1 0 |
0 1 0 1 0 1 0 |
|
Reverse Engineering Lab |
Reverse Engineering Lab |
|
Tools : Softice 3.24 - W32Dasm 8.93 |
from newbie to another |
Screen
area 1024x768 pixels |
Winboost 98 1.24 Key Generator |
Author | : Magellass Corp. |
: winboost98@kagi.com |
Homepage | : http://www.magellass.com |
Intro |
Hi guys .. you are now reading my 9th tutorial .. this time we're gonna discuss about making keygenerator .. mind me for my bad English ... hope you can understand this piece and help you in anyway ... let's rock ! |
Overview |
WinBoost 98 is a special utility to configure and personalize Windows 98/95 looks and feels. Using easy to use graphical user interface you can configure hundreds of Windows 98/95 hidden settings, from the Start Menu, Desktop, Accessories, Windows Explorer, to Internet Explorer. This is something you cannot do on the regular operations. In addition, you will get hundreds of selected Windows 98/95 Tips & Tricks to boost your Windows productivity and performance. |
The Essay |
This serial
protection scheme is based on the User Name to generate a Registration Code. Needless to
say, we can find the correct reg code easily but there's nothing we can learn from it ....
so I'd like to have some fun here by making a keygenerator. Usually we can easily find the
keygen routine just by taking a good look in deadlistings. First thing you need to know is
the location of good/bad message at StringData Ref. Now let's disassemble
wb98.exe and look for a good message ... and here it is : * Referenced by a (U)nconditional or
(C)onditional Jump at Address:
.. enough playing in Win32dasm and fire up SoftICE .. let's have a live concert ! Generally we can always use HMEMCPY in order to break at the target file code. Now goto the registration dialog and use Pirate Copy as Reg Name and 0101010 as Reg Code. [CTRL]+D [OK] .. *boom* .. press F12 untill we land in wb98 code .. then set breakpoint at 4D11648 .. X [ENTER] .. keep tracing .. snip .. snip .. STOP !! :
That's it ... take a few minutes to understand this block of codes and draw a flowchart in your mind ... then write it out .. heh damn easy ! ... here i have written one in C++. On succesful registration the program will store our license data in system registry: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\ShellIconOverlayIdentifiers\Overlays heh .. nice try don't u think ?! ... hope next time the author will hide it in deeper place !!! ... WARNINGS ! : I REALLY DON'T GIVE A F%CKIN' CARE WHERE THE SETTINGS/FILES WAS STORED BY ALL AUTHOR'S SOFTWAREZ AS LONG AS THE UNINSTALL WILL REMOVE IT ALL CLEANLY !!! ... ANYWAY NO ONE CAN HIDE ANYTHING IN MY SYSTEM !!! ... ... it should put in here : HKEY_LOCAL_MACHINE\Software\Magellass\WinBoost98 |
Keygenerator Source |
// Written in Borland C++ 5.2 // Compile with bcc filename.cpp (smaller but slower) or bcc32 filename.cpp (faster but larger) // huh how do make it faster and smaller ! #include <iostream.h> #include <stdio.h> #include <conio.h> #include <stdlib.h> void main(void) { char name[255]; int oddeven=0,sw=0,pos=0,x=0,cx,reg[2]; long edx,esi; clrscr(); cout << " Keygenerator for Winboost 1.24 bY widYa@cL 2011\n"; cout << " Copyright (C) wOrLd cRaCkinG linK '99\n\n"; cout << " User Name : ";gets(name);cx=strlen(name); if (cx == 0) exit(0); if (cx > 0x10) cx = 0x10; while (pos < cx || sw < 2) { if (pos >= cx) { reg[x]=oddeven; x+=1;sw+=1;oddeven=0;pos=1; } else { oddeven=oddeven+name[pos]; pos+=2; } } reg[0]= reg[0]*reg[0]; edx = reg[1]*0x22713; edx = reg[0]+edx+0xCDE736; esi = edx; esi = esi << 3; esi = esi-edx; cout << " Registration Code : " << esi << endl; getch(); } |
Final Notes |
+Thanks+ 2 aLL my friends ouTThere for the responds though it always follow with 'softwarez links' ... hopefully i'll make another tuts (untill 99 tuts .. hurraah !)
|
...
it was not only about breaking the protection ... let me know if you have any comments /suggestions/critics |
Special Thanks |
Magellass Corp for giving me a challenge ... it forced me to improve my skills a little bit ... |
|
Written / Design bY |
|
Page CreaTed |
: 25 March 1999 |